package com.restaurant.application.indexes.exchangegoodslist.mysql;

import com.google.common.collect.Lists;
import com.nebutown.generation.Convert;
import com.nebutown.generation.PickableBean;
import com.nebutown.generation.basictype.UID;

import java.util.List;

public class ExchangeGoodsListCriteria implements PickableBean {

    public static final String FN_RECORDID = "recordId";
    public static final String FN_EXCHANGEGOODSEQUALS = "ExchangeGoodsEquals";
    public static final String FN_EXCHANGEGOODSNOTEQUALS = "ExchangeGoodsNotEquals";
    public static final String FN_ACCUMULATEUPPER = "accumulateUpper";
    public static final String FN_ACCUMULATELOWER = "accumulateLower";
    public static final String FN_ACCUMULATEEQUALS = "accumulateEquals";
    public static final String FN_ACCUMULATENOTEQUALS = "accumulateNotEquals";
    public static final String FN_CREATETIMEUPPER = "createTimeUpper";
    public static final String FN_CREATETIMELOWER = "createTimeLower";
    public static final String FN_CREATETIMEEQUALS = "createTimeEquals";
    public static final String FN_CREATETIMENOTEQUALS = "createTimeNotEquals";
    public static final String FN_CUSTOMERUIDEQUALS = "customerUidEquals";
    public static final String FN_CUSTOMERUIDNOTEQUALS = "customerUidNotEquals";
    public static final String FN_CUSTOMERIDLIKE = "customerIdLike";
    public static final String FN_CUSTOMERIDEQUALS = "customerIdEquals";
    public static final String FN_CUSTOMERIDNOTEQUALS = "customerIdNotEquals";
    public static final String FN_PHONELIKE = "phoneLike";
    public static final String FN_PHONEEQUALS = "phoneEquals";
    public static final String FN_PHONENOTEQUALS = "phoneNotEquals";
    public static final String FN_NICKNAMELIKE = "nickNameLike";
    public static final String FN_NICKNAMEEQUALS = "nickNameEquals";
    public static final String FN_NICKNAMENOTEQUALS = "nickNameNotEquals";
    public static final String FN_GOODSUIDEQUALS = "goodsUIDEquals";
    public static final String FN_GOODSUIDNOTEQUALS = "goodsUIDNotEquals";
    public static final String FN_GOODSNAMELIKE = "goodsNameLike";
    public static final String FN_GOODSNAMEEQUALS = "goodsNameEquals";
    public static final String FN_GOODSNAMENOTEQUALS = "goodsNameNotEquals";
    public static final String FN_GOODSIDLIKE = "goodsIdLike";
    public static final String FN_GOODSIDEQUALS = "goodsIdEquals";
    public static final String FN_GOODSIDNOTEQUALS = "goodsIdNotEquals";

    public static final List<String> FIELD_NAMES = Lists.newArrayList(
             FN_RECORDID,
             FN_EXCHANGEGOODSEQUALS,
             FN_EXCHANGEGOODSNOTEQUALS,
             FN_ACCUMULATEUPPER,
             FN_ACCUMULATELOWER,
             FN_ACCUMULATEEQUALS,
             FN_ACCUMULATENOTEQUALS,
             FN_CREATETIMEUPPER,
             FN_CREATETIMELOWER,
             FN_CREATETIMEEQUALS,
             FN_CREATETIMENOTEQUALS,
             FN_CUSTOMERUIDEQUALS,
             FN_CUSTOMERUIDNOTEQUALS,
             FN_CUSTOMERIDLIKE,
             FN_CUSTOMERIDEQUALS,
             FN_CUSTOMERIDNOTEQUALS,
             FN_PHONELIKE,
             FN_PHONEEQUALS,
             FN_PHONENOTEQUALS,
             FN_NICKNAMELIKE,
             FN_NICKNAMEEQUALS,
             FN_NICKNAMENOTEQUALS,
             FN_GOODSUIDEQUALS,
             FN_GOODSUIDNOTEQUALS,
             FN_GOODSNAMELIKE,
             FN_GOODSNAMEEQUALS,
             FN_GOODSNAMENOTEQUALS,
             FN_GOODSIDLIKE,
             FN_GOODSIDEQUALS,
             FN_GOODSIDNOTEQUALS);

    private Long recordId;
    private UID ExchangeGoodsEquals;
    private UID ExchangeGoodsNotEquals;
    private Long accumulateUpper;
    private Long accumulateLower;
    private Long accumulateEquals;
    private Long accumulateNotEquals;
    private Long createTimeUpper;
    private Long createTimeLower;
    private Long createTimeEquals;
    private Long createTimeNotEquals;
    private UID customerUidEquals;
    private UID customerUidNotEquals;
    private String customerIdLike;
    private String customerIdEquals;
    private String customerIdNotEquals;
    private String phoneLike;
    private String phoneEquals;
    private String phoneNotEquals;
    private String nickNameLike;
    private String nickNameEquals;
    private String nickNameNotEquals;
    private UID goodsUIDEquals;
    private UID goodsUIDNotEquals;
    private String goodsNameLike;
    private String goodsNameEquals;
    private String goodsNameNotEquals;
    private String goodsIdLike;
    private String goodsIdEquals;
    private String goodsIdNotEquals;

    public ExchangeGoodsListCriteria(Long recordId, UID ExchangeGoodsEquals, UID ExchangeGoodsNotEquals, Long accumulateUpper, Long accumulateLower, Long accumulateEquals, Long accumulateNotEquals, Long createTimeUpper, Long createTimeLower, Long createTimeEquals, Long createTimeNotEquals, UID customerUidEquals, UID customerUidNotEquals, String customerIdLike, String customerIdEquals, String customerIdNotEquals, String phoneLike, String phoneEquals, String phoneNotEquals, String nickNameLike, String nickNameEquals, String nickNameNotEquals, UID goodsUIDEquals, UID goodsUIDNotEquals, String goodsNameLike, String goodsNameEquals, String goodsNameNotEquals, String goodsIdLike, String goodsIdEquals, String goodsIdNotEquals) {
        setRecordId(recordId);
        setExchangeGoodsEquals(ExchangeGoodsEquals);
        setExchangeGoodsNotEquals(ExchangeGoodsNotEquals);
        setAccumulateUpper(accumulateUpper);
        setAccumulateLower(accumulateLower);
        setAccumulateEquals(accumulateEquals);
        setAccumulateNotEquals(accumulateNotEquals);
        setCreateTimeUpper(createTimeUpper);
        setCreateTimeLower(createTimeLower);
        setCreateTimeEquals(createTimeEquals);
        setCreateTimeNotEquals(createTimeNotEquals);
        setCustomerUidEquals(customerUidEquals);
        setCustomerUidNotEquals(customerUidNotEquals);
        setCustomerIdLike(customerIdLike);
        setCustomerIdEquals(customerIdEquals);
        setCustomerIdNotEquals(customerIdNotEquals);
        setPhoneLike(phoneLike);
        setPhoneEquals(phoneEquals);
        setPhoneNotEquals(phoneNotEquals);
        setNickNameLike(nickNameLike);
        setNickNameEquals(nickNameEquals);
        setNickNameNotEquals(nickNameNotEquals);
        setGoodsUIDEquals(goodsUIDEquals);
        setGoodsUIDNotEquals(goodsUIDNotEquals);
        setGoodsNameLike(goodsNameLike);
        setGoodsNameEquals(goodsNameEquals);
        setGoodsNameNotEquals(goodsNameNotEquals);
        setGoodsIdLike(goodsIdLike);
        setGoodsIdEquals(goodsIdEquals);
        setGoodsIdNotEquals(goodsIdNotEquals);
    }

    public ExchangeGoodsListCriteria() {
    }

    public ExchangeGoodsListCriteria duplicate() {
        ExchangeGoodsListCriteria result = new ExchangeGoodsListCriteria();
        result.recordId = this.recordId;
        result.ExchangeGoodsEquals = this.ExchangeGoodsEquals;
        result.ExchangeGoodsNotEquals = this.ExchangeGoodsNotEquals;
        result.accumulateUpper = this.accumulateUpper;
        result.accumulateLower = this.accumulateLower;
        result.accumulateEquals = this.accumulateEquals;
        result.accumulateNotEquals = this.accumulateNotEquals;
        result.createTimeUpper = this.createTimeUpper;
        result.createTimeLower = this.createTimeLower;
        result.createTimeEquals = this.createTimeEquals;
        result.createTimeNotEquals = this.createTimeNotEquals;
        result.customerUidEquals = this.customerUidEquals;
        result.customerUidNotEquals = this.customerUidNotEquals;
        result.customerIdLike = this.customerIdLike;
        result.customerIdEquals = this.customerIdEquals;
        result.customerIdNotEquals = this.customerIdNotEquals;
        result.phoneLike = this.phoneLike;
        result.phoneEquals = this.phoneEquals;
        result.phoneNotEquals = this.phoneNotEquals;
        result.nickNameLike = this.nickNameLike;
        result.nickNameEquals = this.nickNameEquals;
        result.nickNameNotEquals = this.nickNameNotEquals;
        result.goodsUIDEquals = this.goodsUIDEquals;
        result.goodsUIDNotEquals = this.goodsUIDNotEquals;
        result.goodsNameLike = this.goodsNameLike;
        result.goodsNameEquals = this.goodsNameEquals;
        result.goodsNameNotEquals = this.goodsNameNotEquals;
        result.goodsIdLike = this.goodsIdLike;
        result.goodsIdEquals = this.goodsIdEquals;
        result.goodsIdNotEquals = this.goodsIdNotEquals;
        return result;
    }

    @Override
    public String toString() {
        return Convert.toJson(this);
    }

    public Long getRecordId() {
        return recordId;
    }

    public void  setRecordId(Long value) {
        this.recordId = value;
    }

    public ExchangeGoodsListCriteria withRecordId(Long value) {
        setRecordId(value);
        return this;
    }

    public ExchangeGoodsListCriteria withRecordId(Long value, Long defaultValue) {
        setRecordId(value == null ? defaultValue : value);
        return this;
    }

    public UID getExchangeGoodsEquals() {
        return ExchangeGoodsEquals;
    }

    public void  setExchangeGoodsEquals(UID value) {
        this.ExchangeGoodsEquals = value;
    }

    public ExchangeGoodsListCriteria withExchangeGoodsEquals(UID value) {
        setExchangeGoodsEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withExchangeGoodsEquals(UID value, UID defaultValue) {
        setExchangeGoodsEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getExchangeGoodsNotEquals() {
        return ExchangeGoodsNotEquals;
    }

    public void  setExchangeGoodsNotEquals(UID value) {
        this.ExchangeGoodsNotEquals = value;
    }

    public ExchangeGoodsListCriteria withExchangeGoodsNotEquals(UID value) {
        setExchangeGoodsNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withExchangeGoodsNotEquals(UID value, UID defaultValue) {
        setExchangeGoodsNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getAccumulateUpper() {
        return accumulateUpper;
    }

    public void  setAccumulateUpper(Long value) {
        this.accumulateUpper = value;
    }

    public ExchangeGoodsListCriteria withAccumulateUpper(Long value) {
        setAccumulateUpper(value);
        return this;
    }

    public ExchangeGoodsListCriteria withAccumulateUpper(Long value, Long defaultValue) {
        setAccumulateUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getAccumulateLower() {
        return accumulateLower;
    }

    public void  setAccumulateLower(Long value) {
        this.accumulateLower = value;
    }

    public ExchangeGoodsListCriteria withAccumulateLower(Long value) {
        setAccumulateLower(value);
        return this;
    }

    public ExchangeGoodsListCriteria withAccumulateLower(Long value, Long defaultValue) {
        setAccumulateLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getAccumulateEquals() {
        return accumulateEquals;
    }

    public void  setAccumulateEquals(Long value) {
        this.accumulateEquals = value;
    }

    public ExchangeGoodsListCriteria withAccumulateEquals(Long value) {
        setAccumulateEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withAccumulateEquals(Long value, Long defaultValue) {
        setAccumulateEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getAccumulateNotEquals() {
        return accumulateNotEquals;
    }

    public void  setAccumulateNotEquals(Long value) {
        this.accumulateNotEquals = value;
    }

    public ExchangeGoodsListCriteria withAccumulateNotEquals(Long value) {
        setAccumulateNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withAccumulateNotEquals(Long value, Long defaultValue) {
        setAccumulateNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeUpper() {
        return createTimeUpper;
    }

    public void  setCreateTimeUpper(Long value) {
        this.createTimeUpper = value;
    }

    public ExchangeGoodsListCriteria withCreateTimeUpper(Long value) {
        setCreateTimeUpper(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCreateTimeUpper(Long value, Long defaultValue) {
        setCreateTimeUpper(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeLower() {
        return createTimeLower;
    }

    public void  setCreateTimeLower(Long value) {
        this.createTimeLower = value;
    }

    public ExchangeGoodsListCriteria withCreateTimeLower(Long value) {
        setCreateTimeLower(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCreateTimeLower(Long value, Long defaultValue) {
        setCreateTimeLower(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeEquals() {
        return createTimeEquals;
    }

    public void  setCreateTimeEquals(Long value) {
        this.createTimeEquals = value;
    }

    public ExchangeGoodsListCriteria withCreateTimeEquals(Long value) {
        setCreateTimeEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCreateTimeEquals(Long value, Long defaultValue) {
        setCreateTimeEquals(value == null ? defaultValue : value);
        return this;
    }

    public Long getCreateTimeNotEquals() {
        return createTimeNotEquals;
    }

    public void  setCreateTimeNotEquals(Long value) {
        this.createTimeNotEquals = value;
    }

    public ExchangeGoodsListCriteria withCreateTimeNotEquals(Long value) {
        setCreateTimeNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCreateTimeNotEquals(Long value, Long defaultValue) {
        setCreateTimeNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getCustomerUidEquals() {
        return customerUidEquals;
    }

    public void  setCustomerUidEquals(UID value) {
        this.customerUidEquals = value;
    }

    public ExchangeGoodsListCriteria withCustomerUidEquals(UID value) {
        setCustomerUidEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCustomerUidEquals(UID value, UID defaultValue) {
        setCustomerUidEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getCustomerUidNotEquals() {
        return customerUidNotEquals;
    }

    public void  setCustomerUidNotEquals(UID value) {
        this.customerUidNotEquals = value;
    }

    public ExchangeGoodsListCriteria withCustomerUidNotEquals(UID value) {
        setCustomerUidNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCustomerUidNotEquals(UID value, UID defaultValue) {
        setCustomerUidNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdLike() {
        return customerIdLike;
    }

    public void  setCustomerIdLike(String value) {
        this.customerIdLike = value;
    }

    public ExchangeGoodsListCriteria withCustomerIdLike(String value) {
        setCustomerIdLike(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCustomerIdLike(String value, String defaultValue) {
        setCustomerIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdEquals() {
        return customerIdEquals;
    }

    public void  setCustomerIdEquals(String value) {
        this.customerIdEquals = value;
    }

    public ExchangeGoodsListCriteria withCustomerIdEquals(String value) {
        setCustomerIdEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCustomerIdEquals(String value, String defaultValue) {
        setCustomerIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getCustomerIdNotEquals() {
        return customerIdNotEquals;
    }

    public void  setCustomerIdNotEquals(String value) {
        this.customerIdNotEquals = value;
    }

    public ExchangeGoodsListCriteria withCustomerIdNotEquals(String value) {
        setCustomerIdNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withCustomerIdNotEquals(String value, String defaultValue) {
        setCustomerIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneLike() {
        return phoneLike;
    }

    public void  setPhoneLike(String value) {
        this.phoneLike = value;
    }

    public ExchangeGoodsListCriteria withPhoneLike(String value) {
        setPhoneLike(value);
        return this;
    }

    public ExchangeGoodsListCriteria withPhoneLike(String value, String defaultValue) {
        setPhoneLike(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneEquals() {
        return phoneEquals;
    }

    public void  setPhoneEquals(String value) {
        this.phoneEquals = value;
    }

    public ExchangeGoodsListCriteria withPhoneEquals(String value) {
        setPhoneEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withPhoneEquals(String value, String defaultValue) {
        setPhoneEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getPhoneNotEquals() {
        return phoneNotEquals;
    }

    public void  setPhoneNotEquals(String value) {
        this.phoneNotEquals = value;
    }

    public ExchangeGoodsListCriteria withPhoneNotEquals(String value) {
        setPhoneNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withPhoneNotEquals(String value, String defaultValue) {
        setPhoneNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNickNameLike() {
        return nickNameLike;
    }

    public void  setNickNameLike(String value) {
        this.nickNameLike = value;
    }

    public ExchangeGoodsListCriteria withNickNameLike(String value) {
        setNickNameLike(value);
        return this;
    }

    public ExchangeGoodsListCriteria withNickNameLike(String value, String defaultValue) {
        setNickNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getNickNameEquals() {
        return nickNameEquals;
    }

    public void  setNickNameEquals(String value) {
        this.nickNameEquals = value;
    }

    public ExchangeGoodsListCriteria withNickNameEquals(String value) {
        setNickNameEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withNickNameEquals(String value, String defaultValue) {
        setNickNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getNickNameNotEquals() {
        return nickNameNotEquals;
    }

    public void  setNickNameNotEquals(String value) {
        this.nickNameNotEquals = value;
    }

    public ExchangeGoodsListCriteria withNickNameNotEquals(String value) {
        setNickNameNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withNickNameNotEquals(String value, String defaultValue) {
        setNickNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getGoodsUIDEquals() {
        return goodsUIDEquals;
    }

    public void  setGoodsUIDEquals(UID value) {
        this.goodsUIDEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsUIDEquals(UID value) {
        setGoodsUIDEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsUIDEquals(UID value, UID defaultValue) {
        setGoodsUIDEquals(value == null ? defaultValue : value);
        return this;
    }

    public UID getGoodsUIDNotEquals() {
        return goodsUIDNotEquals;
    }

    public void  setGoodsUIDNotEquals(UID value) {
        this.goodsUIDNotEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsUIDNotEquals(UID value) {
        setGoodsUIDNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsUIDNotEquals(UID value, UID defaultValue) {
        setGoodsUIDNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsNameLike() {
        return goodsNameLike;
    }

    public void  setGoodsNameLike(String value) {
        this.goodsNameLike = value;
    }

    public ExchangeGoodsListCriteria withGoodsNameLike(String value) {
        setGoodsNameLike(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsNameLike(String value, String defaultValue) {
        setGoodsNameLike(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsNameEquals() {
        return goodsNameEquals;
    }

    public void  setGoodsNameEquals(String value) {
        this.goodsNameEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsNameEquals(String value) {
        setGoodsNameEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsNameEquals(String value, String defaultValue) {
        setGoodsNameEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsNameNotEquals() {
        return goodsNameNotEquals;
    }

    public void  setGoodsNameNotEquals(String value) {
        this.goodsNameNotEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsNameNotEquals(String value) {
        setGoodsNameNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsNameNotEquals(String value, String defaultValue) {
        setGoodsNameNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsIdLike() {
        return goodsIdLike;
    }

    public void  setGoodsIdLike(String value) {
        this.goodsIdLike = value;
    }

    public ExchangeGoodsListCriteria withGoodsIdLike(String value) {
        setGoodsIdLike(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsIdLike(String value, String defaultValue) {
        setGoodsIdLike(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsIdEquals() {
        return goodsIdEquals;
    }

    public void  setGoodsIdEquals(String value) {
        this.goodsIdEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsIdEquals(String value) {
        setGoodsIdEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsIdEquals(String value, String defaultValue) {
        setGoodsIdEquals(value == null ? defaultValue : value);
        return this;
    }

    public String getGoodsIdNotEquals() {
        return goodsIdNotEquals;
    }

    public void  setGoodsIdNotEquals(String value) {
        this.goodsIdNotEquals = value;
    }

    public ExchangeGoodsListCriteria withGoodsIdNotEquals(String value) {
        setGoodsIdNotEquals(value);
        return this;
    }

    public ExchangeGoodsListCriteria withGoodsIdNotEquals(String value, String defaultValue) {
        setGoodsIdNotEquals(value == null ? defaultValue : value);
        return this;
    }

    public Object getValueOf(String name) {
        switch(name) {
        case "recordId": return getRecordId();
        case "ExchangeGoodsEquals": return getExchangeGoodsEquals();
        case "ExchangeGoodsNotEquals": return getExchangeGoodsNotEquals();
        case "accumulateUpper": return getAccumulateUpper();
        case "accumulateLower": return getAccumulateLower();
        case "accumulateEquals": return getAccumulateEquals();
        case "accumulateNotEquals": return getAccumulateNotEquals();
        case "createTimeUpper": return getCreateTimeUpper();
        case "createTimeLower": return getCreateTimeLower();
        case "createTimeEquals": return getCreateTimeEquals();
        case "createTimeNotEquals": return getCreateTimeNotEquals();
        case "customerUidEquals": return getCustomerUidEquals();
        case "customerUidNotEquals": return getCustomerUidNotEquals();
        case "customerIdLike": return getCustomerIdLike();
        case "customerIdEquals": return getCustomerIdEquals();
        case "customerIdNotEquals": return getCustomerIdNotEquals();
        case "phoneLike": return getPhoneLike();
        case "phoneEquals": return getPhoneEquals();
        case "phoneNotEquals": return getPhoneNotEquals();
        case "nickNameLike": return getNickNameLike();
        case "nickNameEquals": return getNickNameEquals();
        case "nickNameNotEquals": return getNickNameNotEquals();
        case "goodsUIDEquals": return getGoodsUIDEquals();
        case "goodsUIDNotEquals": return getGoodsUIDNotEquals();
        case "goodsNameLike": return getGoodsNameLike();
        case "goodsNameEquals": return getGoodsNameEquals();
        case "goodsNameNotEquals": return getGoodsNameNotEquals();
        case "goodsIdLike": return getGoodsIdLike();
        case "goodsIdEquals": return getGoodsIdEquals();
        case "goodsIdNotEquals": return getGoodsIdNotEquals();
        }
        return null;
    }

    public boolean hasField(String name) {
        return FIELD_NAMES.contains(name);
    }

    @Override
    public int hashCode() {
        return signature().hashCode();
    }

    @Override
    public boolean equals(Object o) {
        if(!(o instanceof ExchangeGoodsListCriteria)) return false;
        return signature().equals(((ExchangeGoodsListCriteria)o).signature());
    }

    public String signature() {
        throw new RuntimeException("Bean ExchangeGoodsListCriteria has no signature defined, no hash code or equals possible.");
    }
}
